package chapter1.view;

import java.util.Scanner;

public class MainView {

    public static Scanner input;

    private static final String MENU = """
                ----------------
                     RBAC系统
                ----------------
                | 0 退出系统     |
                | 1 部门管理     |
                | 2 角色管理     |
                | 3 用户管理     |
                ----------------
                请输入选项：""";

    static{
        input= new Scanner(System.in);
    }
    private final  DeptView deptView ;
    private final  RoleView roleView ;
    private final  UserView userView ;

    private static MainView singleton;

    private MainView() {
        deptView = DeptView.getInstance();
        roleView = RoleView.getInstance();
        userView = UserView.getInstance();
    }
    public static MainView getInstance() {
        if (singleton == null) {
            singleton = new MainView();
        }
        return singleton;
    }


    public  void show() {
        String menuChoice;
        do {
            System.out.println(MENU);
            menuChoice = input.nextLine();
            switch (menuChoice) {
                case "0" -> System.out.println("成功退出系统，欢迎再次使用！");
                case "1" -> deptView.show();
                case "2" -> roleView.show();
                case "3" -> userView.show();
                default -> System.out.println("输入错误，请重新输入!");
            }
        }while (!"0".equals(menuChoice)) ;
        input.close();
    }

}